Recent advances have been made to allow direct streaming of video and audio directly from one wireless communication enabled device to another. One such system is known as “Miracast.” Miracast is a trademark for a wireless (e.g. IEEE 802.11 family of wireless protocols or “Wi-Fi”) display protocol promulgated by the Wi-Fi Alliance. As used herein, the term Miracast refers to the current form of the Wi-Fi Alliance's display sharing protocol, also known as Wi-Fi Display (WED). The Miracast specification is designed for streaming any type of video bitstream from a source device to a sink (e.g., client) device. As one example, a source may be a smart phone, and a sink may be a television set. Several peer-to-peer wireless technologies have been developed for securely and wirelessly sending video and audio from a source device to a remote display device. Examples of such technologies include WiDi developed by Intel Corporation, and AirPlay developed by Apple Inc. In an effort to provide an open standard, the Wi-Fi Alliance (WFA) has developed the Miracast standard, which uses Wi-Fi Direct interconnect supported devices without the need for a wireless access point (AP). A Wi-Fi Direct network is in contrast to typical IEEE 802.11 wireless networks, which do include client devices communicating through an AP device.
The Miracast system uses such direct device protocols for sending display data from one device to another, such as from a smart phone to a television or computer, or vice-versa. The Miracast system involves sharing the contents of a frame buffer and speaker audio of the source device to a remote client display/speaker device (sink) over a Wi-Fi connection.
The Miracast protocol involves the source capturing the RGB data from the frame buffer and any PCM (Pulse Coded Modulation) audio data from the audio subsystem. The content of the frame buffer may be derived from application programs or a media player running on the source. The source then compresses the video and audio content, and transmits the data to the sink device. On receiving the bitstream, the sink decodes and renders it on its local display and speakers. In order to maintain synchronization between the source and sink devices, the bitstream may include timing information, periodically transmitted to the sink device from the source device. Such timing information (e.g., a timestamp) may be used by the sink device to enable certain multimedia use-cases.
However, in Wi-Fi networks, collisions, noise and interference, signal-fade, and channel-adaptation often requires retransmission to resend not-acknowledged packets which may cause non-deterministic packet transfer latency, disorderly packets delivery, timing distortions (latency & jitter). These irregularities can skew timing synchronization between the source and sink devices, and/or disrupt isochronous renditions (Lipsync, Surround-Sound, Multichannel-Video, GFX/HTML Remote-Rendition, etc.).